package com.app.system.domain;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.app.common.core.domain.BaseEntity;
import com.app.common.xss.Xss;

/**
 * 通知公告表 sys_notice
 * 
 * @author ruoyi
 */
@Data
@TableName(value = "sys_notice")
@ApiModel(value = "SysNotice", description = "通知公告表")
public class SysNotice extends BaseEntity
{
    @TableField(exist = false)
    private static final long serialVersionUID = 1L;

    /** 公告ID */
    @TableId(type = IdType.ASSIGN_ID)
    private String noticeId;

    /** 公告标题 */
    @Xss(message = "公告标题不能包含脚本字符")
    @NotBlank(message = "公告标题不能为空")
    @Size(min = 0, max = 50, message = "公告标题不能超过50个字符")
    private String noticeTitle;

    /** 公告类型（1通知 2公告） */
    @Size(min = 0, max = 1, message = "公告类型不能超过1个字符")
    private String noticeType;

    /** 公告内容 */
    @Size( max = 500, message = "公告内容不能超过500个字符")
    private String noticeContent;

    /** 公告状态（0正常 1关闭） */
    @Size(min = 0, max = 1, message = "状态不能超过1个字符")
    private String status;
}
